<template>
  <div id="water-level-chart">
    <div class="water-level-chart-title">筛选所得销售额</div>

    <div class="water-level-chart-details">
      <dv-digital-flop :config="sumMoney" style="width:100%;height:50px;" />
    </div>

    <div class="chart-container">
      <dv-conical-column-chart :config="config" style="width:100%;height:400px;" />
      <!--      <dv-water-level-pond :config="config" />-->
    </div>
  </div>
</template>

<script>
export default {
  name: 'WaterLevelChart',
  props: {
    data: {
      type: Array,
      default: () => []
    }
  },
  data() {
    return {
      config: {},
      sumMoney: {}
    }
  },
  watch: {
    data: {
      handler(newVal, oldVal) {
        this.loadData()
      },
      // 立即处理 进入页面就触发
      immediate: true,
      deep: true // 深度监听，监听到更深层级值的变化
    }
  },
  mounted() {
    this.loadData()
  },
  methods: {
    loadData() {
      this.config = {
        data: this.data,
        img: [
          'http://datav.jiaminghi.com//img/conicalColumnChart/1st.png',
          'http://datav.jiaminghi.com//img/conicalColumnChart/2st.png',
          'http://datav.jiaminghi.com//img/conicalColumnChart/3st.png',
          'http://datav.jiaminghi.com//img/conicalColumnChart/4st.png',
          'http://datav.jiaminghi.com//img/conicalColumnChart/5st.png',
          'http://datav.jiaminghi.com//img/conicalColumnChart/6st.png',
          'http://datav.jiaminghi.com//img/conicalColumnChart/7st.png'
        ],
        showValue: true
      }

      let sm = 0
      this.data.forEach(item => {
        sm += item.value
      })
      this.sumMoney = {
        number: [sm],
        content: '累计{nt}万元'
      }
    }
  }
}
</script>

<style lang="scss">
#water-level-chart {
  width: 67%;
  box-sizing: border-box;
  margin-left: 20px;
  background-color: rgba(6, 30, 93, 0.5);
  border-top: 2px solid rgba(1, 153, 209, .5);
  display: flex;
  flex-direction: column;

  .water-level-chart-title {
    font-weight: bold;
    height: 50px;
    display: flex;
    align-items: center;
    font-size: 20px;
    justify-content: center;
  }

  .water-level-chart-details {
    height: 15%;
    display: flex;
    justify-content: center;
    font-size: 17px;
    align-items: flex-end;

    span {
      font-size: 35px;
      font-weight: bold;
      color: #58a1ff;
      margin: 0 5px;
      margin-bottom: -5px;
    }
  }

  .chart-container {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .dv-water-pond-level {
    max-width: 90%;
    width: 200px;
    height: 200px;
    border: 10px solid #19c3eb;
    border-radius: 50%;

    ellipse {
      stroke: transparent !important;
    }

    text {
      font-size: 40px;
    }
  }
}
</style>
